{\rtf1\ansi\ansicpg1252\cocoartf949\cocoasubrtf540
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\margl1440\margr1440\vieww12220\viewh10800\viewkind0
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural

\f0\fs24 \cf0 FFTW is a C library for FFT\
Shared (sst_1.10) is a Java library that contains a JNI interface to FFTW\
\
Shared (download, manual) - https://launchpad.net/shared\
Shared (javadoc) - http://shared.sourceforge.net/javadoc/\
FFTW (download) - http://www.fftw.org/download.html\
FFTW (doc) - http://www.fftw.org/fftw2_doc/\
\
Installed FFTW following their instructions (./configure; make; make install)\
\
Installed Shared following the slightly confusing instructions in the manual (make && ./test.py)\
	- Had to get CMake, I think from Darwin Ports\
	- Had to modify native/include/shared/Common.hpp - Warnings about non-virtual destructor for CleanupHandler during compilation, so added empty virtual destructor for it. (Pure virtual destructor did not compile.) \
	- Had to change Java version of my project from 1.5 to 1.6\
\
Old java.library.path: .:/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java\
New java.library.path: /usr/local/lib\
\
\
I'm trying to use Shared Scientific Toolbox as a Java wrapper for FFTW, but I can't get it to call FFTW. FFTW is installed; the library files are in /usr/local/lib, and that directory is on java.library.path. (I don't know much about JNI, but I'm guessing that may be important.) Following the example in shared.test.fft.ArrayFFTTest, I wrote a test program that constructs a ComplexArray and calls the fft function on it. To see if the FFTW version of fft was actually getting called, I put some print statements in shared.fft.ModalFFTService and shared.util.Services. I learned that the ModalFFTService constructor was returning a JavaFFTService because Services.createService was not finding FFTService.class in serviceMap. From looking at the code and docs, I don't understand how anything gets put into serviceMap. So that's where I'm stuck, and I'd appreciate any help on getting my code to call FFTW instead of JavaFFTService. \
\
I'm using Mac OS 10.5.8, by the way.  \
\
}